//package zhongbo.java.air.ingestion.listen;
//
//import cn.hutool.json.JSONArray;
//import cn.hutool.json.JSONObject;
//import cn.hutool.json.JSONUtil;
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.data.redis.connection.Message;
//import org.springframework.data.redis.connection.MessageListener;
//import org.springframework.stereotype.Component;
//import zhongbo.java.air.ingestion.dto.FlightPathDto;
//
//@Component
//@Slf4j
//public class RedisSubscribeLogChannelListenerMy implements MessageListener {
//
//    @Override
//    public void onMessage(Message message, byte[] pattern) {
//        String channel = new String(message.getChannel());
//        String msgBody = new String(message.getBody());
//        log.info("收到频道【{}】的消息: 【{}】", channel, msgBody);
////        if (channel.equals("flight_path_chanel")) {
////            log.info("确认是频道【{}】的消息",channel);
////        }
//        convert(msgBody);
//    }
//    public FlightPathDto convert(String jsonStr) {
//        if (jsonStr.isEmpty()) {
//            log.error("jsonStr没有东西{}:",jsonStr);
//        }
//        JSONObject jsonObject = JSONUtil.parseObj(jsonStr);
//        String icao = jsonObject.getStr("icao"); // 关联飞机ICAO码
//
//        JSONArray traceArray = jsonObject.getJSONArray("trace");
//        if (traceArray.size() <= 0) {
//            log.error("traceArray没有东西{}:",traceArray);
//        }
//
//        Object o1 = traceArray.get(0);
//        Object o2 = traceArray.get(1);
//        Object o3 = traceArray.get(2);
//        Object o4 = traceArray.get(3);
//        Object o5 = traceArray.get(4);
//        Object o6 = traceArray.get(5);
//        Object o7 = traceArray.get(6);
//
//
//
//        System.out.println("ICAO码 " + icao);
//        System.out.println("时间戳 "+o1);
//        System.out.println("纬度 "+o2);
//        System.out.println("经度 "+o3);
//        System.out.println("海拔 "+o4);
//        System.out.println("地速 "+o5);
//        System.out.println("航向角 "+o6);
//        System.out.println("类型 "+o7);
//
//
//
////        Double timestamp = (Double) o1;
////        System.out.println("doubleo1：" + o1);
//
//
//        FlightPathDto flightPathDto = new FlightPathDto();
//        flightPathDto.setIcao_code(icao);
//        return null;
//    }
//}
